home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #2 / Amiga Plus CD - 2004 - No. 02.iso / AmigaPlus / Tools / Datatypes / ilbmdtPPC / ilbmdtPPC.doc < prev    next >
Encoding:
Text File  |  2004-01-31  |  7.5 KB  |  177 lines

  1.  
  2.  ilbm.datatype for PPC (WarpUP)
  3.  © 2001-2004 by Stephan Rupprecht
  4.  All rights reserved.
  5.  
  6.  
  7. COPYRIGHT AND DISCLAIMER
  8.  ilbm.datatype PPC is copyrighted 2001-2004 by Stephan Rupprecht. 
  9.  All rights reserved. This program is freeware, so no financial
  10.  donations required. Redistribution allowed if the package is 
  11.  left unchanged. The author is not responsible for any damage 
  12.  caused by the use or misuse of this documentation and/or the 
  13.  program(s) it describes.
  14.  
  15.  All mentioned trademarks are subject to their respective owners.
  16.  
  17.  
  18. REQUIREMENTS
  19.  - Any Amiga® (compatible) computer with at least OS3.0.
  20.  - PPC603 or better, running WarpUP v4/5 (5.1 strongly recommend).
  21.  - at least picture.datatype v43
  22.  - recommend: cgx or p96 with Planes2Fast option activated
  23.    (important for speed).
  24.  - some megabytes of free memory, an 1024x768x24 ilbm picture
  25.    requires around 3.5mb of memory (the datatype always loads the
  26.    whole picture into memory before decoding, the "load memory"
  27.    will be released after decoding. This is more efficient as it
  28.    reduces the number of context-switches)!
  29.  
  30.  
  31. DESCRIPTION
  32.  This an ilbm.datatype for the PPC processor running WarpUP v4
  33.  or v5. For a maximum of speed your system should be equipped with
  34.  an rtg software that supports planar bitmaps in fastram, fblit
  35.  also works.
  36.  
  37.  
  38. BENCHMARKS
  39.  Here's what PicBench measures. Thanks to Denis Zwornarz for sending the
  40.  results to me. Config: A4000/060/50MHz/604e/233MHz, OS3.5, WarpUp 5
  41.  
  42.  Resolution |Filesize|68k ilbm.datatype(44.24)|PPC ilbm.datatype(45.2)| %
  43.  -----------+--------+------------------------+-----------------------+----
  44.  320x256x8  |  70602 |0.0603 sec.             |0.0538 sec.            |112%
  45.  232x745x24 | 453184 |0.3602 sec.             |0.2427 sec.            |148%
  46.  640x480x8  |  37338 |0.0580 sec.             |0.0354 sec.            |163%
  47.  640x512x8  | 188956 |0.0976 sec.             |0.0513 sec.            |190%
  48.  1280x1800x8|1157464 |0.4618 sec.             |0.1545 sec.            |298% 
  49.                                                                    Avg.182%
  50.                                                                   
  51.  Here're the results of a test I did. The ILBM sample files from the ADevCD
  52.  were taken for testing. Config: A4000/040/40MHz/604e/200MHz, SysClock: 60MHz,
  53.  OS3.9, WarpUp 5.1, planes in fastram
  54.  
  55.  Resolution |Filesize|68k ilbm.datatype(44.25)|PPC ilbm.datatype(45.5)| %
  56.  -----------+--------+------------------------+-----------------------+----
  57.  320x200x5  |   12930|0.0632 sec.             |0.0572 sec.            |110%
  58.  1024x1024x4|  311868|0.1870 sec.             |0.0762 sec.            |245%
  59.  716x580x24 |  504876|1.3662 sec.             |0.3119 sec.            |438%
  60.  256x256x8  |   26516|0.0616 sec.             |0.0339 sec.          |182%
  61.  736x482x1  |    6906|0.0446 sec.             |0.0481 sec.            | 92%
  62.  404x400x8  |  108628|0.0884 sec.             |0.0518 sec.            |170%
  63.  16x16x8    |    1300|0.0045 sec.             |0.0287 sec.            | 15%
  64.                                                                    Avg.178%
  65.  
  66.  As you can see, the larger the picture the better the result. Very small
  67.  images are a problem because the contextswitches take longer than image
  68.  decoding. Compared to the ilbm.datatype of OS3.5+ the difference would be
  69.  even greater.
  70.  
  71.  
  72. INSTALLATION
  73.  Just 'Copy ilbm.datatype TO SYS:classes/datatypes/'.
  74.  
  75.  
  76. USAGE
  77.  There's no difference in using my ilbmdt and the original one. You can 
  78.  configure the datatype by placing desired options in an environment variable
  79.  called 'classes/datatypes/ilbm.datatype'. Please use SetEnv (global) or Set
  80.  (local) to create the variable. To make the changes permanent, you have to 
  81.  copy the variable from env to envarc.
  82.  
  83.  The preferences template is:
  84.  HAM2TC/S,NOEHB/S,TC2HAM/S,DD=DONTDITHER/S,RTG=RTGMODE/S,CM=CHUNKYMODE/S
  85.  
  86.  HAM2TC/S: convert HAM images to truecolor (useful for gfxboard users).
  87.  
  88.  NOEHB/S: convert EHB images, so that they can be displayed on RTG
  89.   (cgx/p96) screens.
  90.   
  91.  TC2HAM: convert truecolor images to HAM (useful for OCS/ECS/AGA users).
  92.  
  93.  DD=DONTDITHER/S: disable dithering on 15+ screens and pictdt v44+.
  94.  
  95.  RTG=RTGMODE/S: forces the datatype to allocate bitmaps in fastram
  96.   even when your system does seem to support this. If you have
  97.   FBlit by Stephen Brookes installed, you can turn on this option
  98.   although I cannot guarantee that it works with every application.
  99.  
  100.  CM=CHUNKYMODE/S: by default the datatype writes the imagedata
  101.   of <= 8bit images directly into a bitmap. When this switch is
  102.   enabled the planar data will be converted to chunky data instead, 
  103.   this decreases the decoding speed but allows the picture.datatype
  104.   to remap images faster (because the planar to chunky conversion
  105.   has been done by the PPC already). CHUNKYMODE is turned on by
  106.   default when the cgx pictdt is installed, this works around a bug
  107.   of the cgx datatype.
  108.  
  109.  
  110. KNOWN PROBLEMS
  111.  PlayCD crashs on startup: This is bug in WarpOS which expects that a
  112.   cli process has a commandname, this is not the case for the PlayCD
  113.   anim server. I've included a patch for the PlayCD 45.7 binary that
  114.   will fix this problem. Simply run it from a shell, you don't need 
  115.   to give any options as long as PlayCD is located in SYS:Utilities.
  116.   The next release of PlayCD (and WarpOS) won't need this patch. Thanks
  117.   to Oliver Roberts for tracking down the problem.
  118.   
  119.  RainBoot or AWeb crashs: Two users have reported this problem, I'm
  120.   not able to reproduce it but I guess this could be a stack
  121.   problem. One user reported me that some strange crashes disappeared 
  122.   after he has updated to WarpUP 5.1.
  123.  
  124.  
  125. SPECIAL THANKS GO TO
  126.  Oliver Roberts and Hubert Maier jun. for their help.
  127.  Dámaso D. Estévez for the spanish translation.
  128.  
  129.  
  130. HISTORY
  131.  45.1  first public release
  132.  45.2  decoding of truecolor images with a masking plane didn't work
  133.        correctly. added a workaround for a bug in picture.datatype
  134.        v43 (cgx version), I hope this doesn't break with other
  135.        picture.datatypes.
  136.  45.3  doing longwrites to odd address produces pixel garbage on some
  137.        ppc boards (probably first series boards), because of this I
  138.        disabled the longwrites. Did some cleanups to the source.
  139.  45.3a included spanish documentation by Damaso Dominguez.
  140.  45.3b included a patch for PlayCD 45.7 that fixes the "crash on startup"
  141.        problem. Simply run the PlayCdPatch binary to fix this problem.
  142.  45.4  wrote my first PPC assembler program:) The planar2chunky
  143.        routine used for decoding 24bit images is written in assembler,
  144.        now. This gives a speedup of ~40%. Enabled the preferences system.
  145.  45.5  speeded up p2c code a bit. Ooops! The TC2HAM mode always wrote
  146.        to 8 bitplanes, this crashed badly on ECS machines (only 6 
  147.        planes available). Added RTGMODE switch.
  148.  45.6  added CHUNKYMODE switch for faster remapping, it also allows
  149.        to use the cgx pictdt.
  150.  45.7  now supports CMYK ILBMs produced by BME <Jan-Erik Karlsson>.       
  151.  45.8  made it possible to load ilbms produced by fxPaint (FORM
  152.        contains wrong size) <Robin>.
  153.  45.9  because of the 45.7 change, BW and greyscale images couldn't
  154.        be loaded anymore (greyscale didn't even work before;). Found
  155.        out that the OS picture.datatype doesn't treat HAM and EHB
  156.        images passed as chunkydata right. Added a workaround for that.
  157.  45.10 internal version.
  158.  45.11 fixed decoding of truecolor images with alpha. Thanks to Jan-Erik
  159.        Karlsson for reporting the bug and sending a sample image.
  160.  
  161.  
  162. AUTHOR
  163.  
  164.  Please send bug reports and ideas to:
  165.  
  166.     Stephan Rupprecht
  167.     Apfeldweg 1
  168.     D44359 Dortmund
  169.     Germany
  170.  
  171.  Send emails to
  172.  
  173.     info@stephan-rupprecht.de
  174.     
  175.  WWW
  176.      http://stephan-rupprecht.de
  177.